package com.baosight.risk.service.fltd.vo;

import com.baosight.risk.service.xtzy.entity.XtzyCompany;
import com.baosight.risk.service.xtzy.entity.XtzyUser;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Map;

@Data
public class FltdTaskVO implements Serializable {

    /**
     * 待办任务ID
     */
    private String todoGuid;

    /**
     * 待办任务类型：1审批/2阅知/3审阅/9其他
     */
    private String todoType;

    /**
     * 待办任务类型：1审批/2阅知/3审阅/9其他
     */
    private String todoTypeName;

    /**
     * 实例ID
     */
    private String procGuid;

    /**
     * 流程编码
     */
    private String flowNo;

    /**
     * 流程说明
     */
    private String flowName;

    /**
     * 项目ID
     */
    private String taskGuid;

    /**
     * 业务ID
     */
    private String bizGuid;

    /**
     * 业务说明
     */
    private String bizName;

    /**
     * 业务描述
     */
    private String bizDesc;

    /**
     * 活动编码
     */
    private String nodeCode;

    /**
     * 活动说明
     */
    private String nodeName;

    /**
     * 前一节点活动编码
     */
    private String beforeNodeCode;

    /**
     * 前一节点活动说明
     */
    private String beforeNodeName;

    /**
     * 前一节点提交人
     */
    private String beforeUserCode;

    /**
     * 前一节点提交姓名
     */
    private String beforeUserName;

    /**
     * 最初责任人
     */
    private String firstUserCode;

    /**
     * 最初责任人姓名
     */
    private String firstUserName;

    /**
     * 当前责任人
     */
    private String currUserCode;

    /**
     * 当前责任人姓名
     */
    private String currUserName;

    /**
     * 实际执行人工号
     */
    private String auditCode;

    /**
     * 实际执行人姓名
     */
    private String auditName;

    /**
     * 状态（open--进行中,exec--部分完成,close--完成，finish--关闭）
     */
    private String status;

    /**
     * 状态名称
     */
    private String statusName;

    /**
     * 计划开始日期
     */
    private Date planStartDate;

    /**
     * 计划完成日期
     */
    private Date planEndDate;

    /**
     * 开始时间
     */
    private Date factStartDate;

    /**
     * 完成时间
     */
    private Date factEndDate;

    /**
     * 审计意见
     */
    private String context;

    /**
     * 链接
     */
    private String pageUrl;

    /**
     * 被审单位编码
     */
    private String compCode;

    /**
     * 被审单位名称
     */
    private String compName;

    /**
     * 部门工号
     */
    private String deptCode;

    /**
     * 部门名称
     */
    private String deptName;

    /**
     * 年度
     */
    private String acctYear;

    /**
     * 季度
     */
    private String quarterCode;

    /**
     * 季度
     */
    private String quarterName;

    /**
     * 合并标识（Y-是;N-否）
     */
    private String groupFlag;

    /**
     * 合并条件
     */
    private String groupCondition;

    /**
     * 备注
     */
    private String remark;

    /**
     * 排序
     */
//    private String rowOrder;
    private Integer rowOrder;
    /**
     * 扩展属性1(1提交2回退3结束)
     */
    private String ext1;

    /**
     * 扩展属性2
     */
    private String ext2;

    /**
     * 扩展属性3
     */
    private String ext3;

    /**
     * 扩展属性4
     */
    private String ext4;

    /**
     * 扩展属性5
     */
    private String ext5;

    /**
     * 创建日期
     */
    private Date createTime;

    /**
     * 创建人
     */
    private String createBy;

    /**
     * 修改日期
     */
    private Date updateTime;

    /**
     * 修改人
     */
    private String updateBy;

    /**
     * 绿色通道标识
     */
    private String greenFlag;

    /**
     * 催办标识（Y/N)
     */
    private String pressFlag;

    /**
     * 催办次数
     */
    private Integer pressNum;

    /**
     * 管理单位编码
     */
    private String manageCompCode;

    /**
     * 管理单位名称
     */
    private String manageCompName;

    /**
     * 流程审批人
     * userCode  员工编码
     * userDesc 员工姓名
     * ext1 所在部门编码
     * ext2 所在部门名称
     */
    private List<XtzyUser> customUsers;

    /**
     * 参与流程审批的组织
     * compCode 单位编码
     * compName 单位名称
     */
    private XtzyCompany customCompany;

    /**
     * 审核按钮
     */
    private NodeTransitionVO submitButton;

    /**
     * 流程参数
     */
    private Map<String, Object> variables;

    private List<String> flowNoList;

}
